Skip to content

Document FBC catalog builds and OLM v1 testing workflows#598

Open
kaovilai wants to merge 4 commits into
openshift:mainfrom
kaovilai:copilot/research-olm-v1-support
Open

Document FBC catalog builds and OLM v1 testing workflows#598
kaovilai wants to merge 4 commits into
openshift:mainfrom
kaovilai:copilot/research-olm-v1-support

Conversation

@kaovilai
Copy link
Copy Markdown
Member

@kaovilai kaovilai commented May 15, 2026

Summary

This PR updates the operator testing documentation to cover three installation paths: FBC catalog images (recommended), operator-sdk bundle path (transitional), and the new OLM v1 ClusterExtension path for OCP 4.18+.

Changes

  • Restructured intro: Document now explicitly lists all three operator install paths with guidance on when to use each
  • FBC catalog section: Added complete guide for building File-Based Catalog images using opm render, including Dockerfile example and ci-operator configuration
  • OLM v1 section: New comprehensive section documenting ClusterCatalog + ClusterExtension pattern for OCP 4.18+ with working examples
  • Migration guidance: Clarified recommended migration path from deprecated ci-operator-built index images to FBC catalogs
  • Step registry reference: Added pointer to windows-conf-operator-olmv1 as a working example

Motivation

The deprecated ci-operator-built index image approach doesn't work with file-based catalogs (4.11+) or OLM v1 (4.18+). This documentation helps teams migrate to supported patterns and adopt OLM v1 for new clusters.

Copilot AI and others added 2 commits May 15, 2026 19:20
@openshift-ci openshift-ci Bot requested review from hector-vido and jmguzik May 15, 2026 19:45
@kaovilai kaovilai changed the title OLMv1 support Document FBC catalog builds and OLM v1 testing workflows May 15, 2026
@hector-vido
Copy link
Copy Markdown
Contributor

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label May 15, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 15, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: hector-vido, kaovilai

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label May 15, 2026
Comment on lines +330 to +339
FROM quay.io/operator-framework/opm:latest AS builder
ARG BUNDLE_IMG
RUN mkdir /catalog && \
opm render ${BUNDLE_IMG} --output=yaml > /catalog/catalog.yaml && \
opm validate /catalog

FROM scratch
COPY --from=builder /catalog /catalog
ENTRYPOINT ["/bin/opm"]
CMD ["serve", "/catalog"]
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This will fail for a few reasons:

  1. A minimum valid FBC has olm.package, olm.channel, and olm.bundle. opm render <bundleImage> only produces olm.bundle.
  2. FROM scratch, but then /bin/opm serve /catalog will fail because scratch doesn't contain an opm binary.
  3. You need LABEL operators.operatorframework.io.index.configs.v1=/catalog

Also, note that opm serve is only necessary for OLMv0 when using a CatalogSource that does not define spec.grpcPodConfig.extractContent

Otherwise OLMv0+spec.grpcPodConfig.extractContent and OLMv1 can use catalog images with just:

FROM scratch
COPY <catalogDir> /catalog
LABEL operators.operatorframework.io.index.configs.v1=/catalog

pollIntervalMinutes: 1
{{< / highlight >}}

**2. Installer ServiceAccount and ClusterRoleBinding** — OLM v1 requires an explicit service account:
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For now. We're working on dropping this requirement.

@openshift-ci openshift-ci Bot removed the lgtm Indicates that a PR is ready to be merged. label May 15, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 15, 2026

New changes are detected. LGTM label has been removed.

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 15, 2026

@kaovilai: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/links ddaf782 link true /test links

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants